package jvmgo.book.ch07;
public class MethodInvokeDemo implements Runnable {
    public static void main(String[] args) {
        MethodInvokeDemo.staticMethod();
        //new MethodInvokeDemo().test();
    }



   public void test() {
       MethodInvokeDemo.staticMethod(); // invokestatic
       MethodInvokeDemo demo = new MethodInvokeDemo(); // invokespecial
        demo.instanceMethod(); // invokespecial
        super.equals(null); // invokespecial
        this.run(); // invokevirtual
        ((Runnable) demo).run(); // invokeinterface
    }



    public static void staticMethod() {
    }

    private void instanceMethod() {
    }

    @Override
    public void run() {
    }
}